package tt.com.warehousemanager.service;

import com.baomidou.mybatisplus.extension.service.IService;
import tt.com.common.model.YxCommonProviders;
import tt.com.common.model.YxCommonWarehouse;
import tt.com.common.model.YxCommonWarehouseGoods;
import tt.com.common.util.PageUtil;

/**
 * @author Czycka
 * @date 2022/8/18 17:22
 * @description 仓库服务类 接口
 */
public interface WarehouseService extends IService<YxCommonWarehouse> {

    /**
     * 添加仓库
     * @param warehouse 仓库实体类
     * @param createUserId 操作人id
     * @return 受影响行数
     */
    Integer insertWareHouse(YxCommonWarehouse warehouse, String createUserId);

    /**
     * 逻辑删除仓库
     *
     * @param id           物品信息id
     * @param deleteUserId 删除人id
     * @return 数据不存在返回 -1 数据已被删除返回 -2
     */
    Integer deleteWareHouse(Long id, String deleteUserId);

    /**
     * 修改仓库
     *
     * @param warehouse        修改物品的实体类
     * @param updateUserId 修改人id
     * @return 受影响行数
     */
    Integer updateWareHouse(YxCommonWarehouse warehouse, String updateUserId);

    /**
     * 分页展示仓库
     *
     * @param pageUtil 当前页和每页显示数量
     * @return 仓库信息集合
     */
    PageUtil showWareHouseByPage(PageUtil pageUtil);
}
